﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using System.Windows.Forms.VisualStyles;
using System.Collections;
using BUS;
using DTO;

namespace DA1
{
    public partial class KhachHang : Form
    {
        public KhachHang()
        {
            InitializeComponent();
        }
        private void Load_ManHinh()
        {
            KhachHang_BUS bus = new KhachHang_BUS();
            DGV_DanhSachKH.DataSource = bus.GetDanhSachKH();
            txt_MaKH.Text = "";
            txtTenKH.Text = "";
            txt_DienThoai.Text = "";
            txt_DiaChi.Text = "";
            txt_DienThoai.Text = "";
            txt_DacDiem.Text = "";
        }
        private void btn_Thoat_Click1(object sender, EventArgs e)
        {
            this.Close();
        }
       
        private void btn_LoaiKH_Click(object sender, EventArgs e)
        {
            LoaiKhachHang form = new LoaiKhachHang();
            form.ShowDialog();
        }

        private void btn_ThemKH_Click(object sender, EventArgs e)
        {
            if (txtTenKH.Text == "")
            {
                Lbl_ThongBao.Text = "Hãy nhập tên khách hàng";
                Lbl_ThongBao.Visible = true;
                return;
            }
            else
            {
                try
                {
                    KhachHang_DTO KH_DTO = new KhachHang_DTO();
                    KhachHang_BUS KH_BUS = new KhachHang_BUS();
                    if (txtTenKH.Text == "")
                    {
                        Lbl_ThongBao.Text = "Hãy nhập Tên Khách Hàng";
                        Lbl_ThongBao.Visible = true;
                        return;
                    }
                    if (txt_DienThoai.Text == "")
                    {
                        Lbl_ThongBao.Text = "Hãy nhập thông tin điện thoại của Khách Hàng";
                        Lbl_ThongBao.Visible = true;
                        return;
                    }
                    if (txt_DiaChi.Text == "")
                    {
                        Lbl_ThongBao.Text = "Hãy nhập Địa chỉ Khách Hàng";
                        Lbl_ThongBao.Visible = true;
                        return;
                    }

                    KH_DTO.TenKH = txtTenKH.Text.ToString();
                    KH_DTO.DienThoai = txt_DienThoai.Text.ToString();
                    KH_DTO.DiaChi = txt_DiaChi.Text.ToString();
                    KH_DTO.DacDiem = txt_DacDiem.Text.ToString();
                    KH_DTO.MaLoaiKH = int.Parse(cmb_LoaiKH.SelectedValue.ToString());
                    KH_DTO.MaKH = KH_BUS.proc_Ins_KhachHang(KH_DTO);
                    txt_MaKH.Text = KH_DTO.MaKH.ToString();
                    //Load lại màn hình
                    Load_ManHinh();
                    Lbl_ThongBao.Text = "Thêm thành công";
                    Lbl_ThongBao.Visible = true;
                }
                catch
                {
                    Lbl_ThongBao.Text = "Không thêm được";
                    Lbl_ThongBao.Visible = false;
                }
            }
        }

        private void btnXem_Click(object sender, EventArgs e)
        {
            KhachHang_BUS bus = new KhachHang_BUS();
            //Load du lieu len DGV_KhachHang
            DGV_DanhSachKH.DataSource = bus.GetDanhSachKH();
        }

        private void btn_Thoat_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void KhachHang_Load(object sender, EventArgs e)
        {
            LoaiKH_BUS bus = new LoaiKH_BUS();
            DataTable dt = new DataTable();
            dt = bus.GetTableLoaiKH();
            cmb_LoaiKH.DataSource = dt;
            cmb_LoaiKH.DisplayMember = "TenLoaiKH";
            cmb_LoaiKH.ValueMember = "MaLoaiKH";
           
        }

        private void DGV_DanhSachKH_CellClick(object sender, DataGridViewCellEventArgs e)
        {
            try
            {
                Lbl_ThongBao.Visible = false;
                int i = DGV_DanhSachKH.CurrentRow.Index;
                if ((e.RowIndex == i) && (e.ColumnIndex == -1))
                {
                    Lbl_ThongBao.Visible = false;
                    txt_MaKH.Text = DGV_DanhSachKH.Rows[i].Cells["MaKH"].Value.ToString();
                    txtTenKH.Text = DGV_DanhSachKH.Rows[i].Cells["TenKH"].Value.ToString();
                    txt_DienThoai.Text = DGV_DanhSachKH.Rows[i].Cells["DienThoai"].Value.ToString();
                    cmb_LoaiKH.DisplayMember = DGV_DanhSachKH.Rows[i].Cells["LoaiKH"].Value.ToString();
                    txt_DiaChi.Text = DGV_DanhSachKH.Rows[i].Cells["DiaChi"].Value.ToString();
                    txt_DacDiem.Text = DGV_DanhSachKH.Rows[i].Cells["DacDiem"].Value.ToString();
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("Lỗi " + ex);
                Lbl_ThongBao.Visible = true;
            }
           
        }

        private void btn_sua_Click(object sender, EventArgs e)
        {
            {
                try
                {
                KhachHang_BUS bus = new KhachHang_BUS();
                KhachHang_DTO dto = new KhachHang_DTO();
                if (txtTenKH.Text == "")
                {
                    Lbl_ThongBao.Text = "Hãy nhập Tên Khách Hàng";
                    Lbl_ThongBao.Visible = true;
                    return;
                }
                if (txt_DienThoai.Text == "")
                {
                    Lbl_ThongBao.Text = "Hãy nhập thông tin điện thoại của Khách Hàng";
                    Lbl_ThongBao.Visible = true;
                    return;
                }
                if (txt_DiaChi.Text == "")
                {
                    Lbl_ThongBao.Text = "Hãy nhập Địa chỉ Khách Hàng";
                    Lbl_ThongBao.Visible = true;
                    return;
                }
                dto.MaKH = int.Parse(txt_MaKH.Text.ToString());
                dto.TenKH = txtTenKH.Text.ToString();
                dto.MaLoaiKH = int.Parse(cmb_LoaiKH.SelectedValue.ToString());
                dto.DienThoai = txt_DienThoai.Text.ToString();
                dto.DiaChi = txt_DiaChi.Text.ToString();
                dto.DacDiem = txt_DacDiem.Text.ToString();
                bus.SuaKhachHang(dto);
                Load_ManHinh();
                Lbl_ThongBao.Text = "Sửa thành công";
                Lbl_ThongBao.Visible = true;
                }
                catch 
                {
                    MessageBox.Show("Không sửa được ");
                    Lbl_ThongBao.Visible = true;
                }
            }
        }

    }
}
